package com.ruoyi.db.mapper;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import com.ruoyi.db.domain.SourcePushResultInfo;
import org.apache.ibatis.annotations.Param;

/**
 * 线索推送结果Mapper接口
 * 
 * @author ruoyi
 * @date 2023-12-28
 */
public interface SourcePushResultInfoMapper 
{
    /**
     * 查询线索推送结果
     * 
     * @param id 线索推送结果主键
     * @return 线索推送结果
     */
    public SourcePushResultInfo selectSourcePushResultInfoById(Long id);

    List<Map<String, Object>> getcost(@Param("dateInfo") String dateInfo);
    List<Map<String, Object>> getCpsCost(SourcePushResultInfo sourcePushResultInfo);
    List<Map<String, Object>> getcostBetween(@Param("startDate") String dateInfo,@Param("endDate") String endDate);

    /**
     * 查询线索推送结果列表
     * 
     * @param sourcePushResultInfo 线索推送结果
     * @return 线索推送结果集合
     */
    public List<SourcePushResultInfo> selectSourcePushResultInfoList(SourcePushResultInfo sourcePushResultInfo);

    /**
     * 查询线索推送结果列表
     *
     * @param sourcePushResultInfo 线索推送结果
     * @return 线索推送结果集合
     */
    public List<Map<String, Object>> selectSourcePushResultInfoMapList(SourcePushResultInfo sourcePushResultInfo);
    public List<Map<String, Object>> selectSourcePushResultInfoMapList1(SourcePushResultInfo sourcePushResultInfo);
    public List<Map<String, Object>> selectAccountMapList(SourcePushResultInfo sourcePushResultInfo);
    public List<Map<String, Object>> selectAccountMapList1(SourcePushResultInfo sourcePushResultInfo);


    /**
     * 新增线索推送结果
     * 
     * @param sourcePushResultInfo 线索推送结果
     * @return 结果
     */
    public int insertSourcePushResultInfo(SourcePushResultInfo sourcePushResultInfo);

    /**
     * 修改线索推送结果
     * 
     * @param sourcePushResultInfo 线索推送结果
     * @return 结果
     */
    public int updateSourcePushResultInfo(SourcePushResultInfo sourcePushResultInfo);

    /**
     * 删除线索推送结果
     * 
     * @param id 线索推送结果主键
     * @return 结果
     */
    public int deleteSourcePushResultInfoById(Long id);

    /**
     * 批量删除线索推送结果
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSourcePushResultInfoByIds(Long[] ids);

    String getTotal(SourcePushResultInfo sourcePushResultInfo);
}
